package com.zx.framework.plat.param.po;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

/**
 * Param entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "s_param")
public class Param implements java.io.Serializable {

	// Fields
	@NotBlank(message="ID不能为空！")
	@Length(max=64,message="ID最大长度为64")
	private String id;
	private String owner;
	private String clazz;
	private String dataType;
	@NotBlank(message="参数名称不能为空！")
	private String labels;
	private String code;
	private String code1;
	private String code2;
	private String code3;
	private String layer;
	@NotNull(message="状态不能为空")
	private Integer status;
	@NotNull(message="是否只读不能为空")
	private Integer readonly;
	private String remark;

	// Constructors

	/** default constructor */
	public Param() {
	}

	/** minimal constructor */
	public Param(String id) {
		this.id = id;
	}

	/** full constructor */
	public Param(String id, String owner, String clazz, String dataType,
			String labels, String code, String code1, String code2,
			String code3, String layer, Integer status, Integer readonly,
			String remark) {
		this.id = id;
		this.owner = owner;
		this.clazz = clazz;
		this.dataType = dataType;
		this.labels = labels;
		this.code = code;
		this.code1 = code1;
		this.code2 = code2;
		this.code3 = code3;
		this.layer = layer;
		this.status = status;
		this.readonly = readonly;
		this.remark = remark;
	}

	// Property accessors
	@Id
	@Column(name = "ID", unique = true, nullable = false, length = 64)
	public String getId() {
		return this.id;
	}

	public void setId(String id) {
		this.id = id;
	}

	@Column(name = "OWNER", length = 64)
	public String getOwner() {
		return this.owner;
	}

	public void setOwner(String owner) {
		this.owner = owner;
	}

	@Column(name = "CLAZZ", length = 64)
	public String getClazz() {
		return this.clazz;
	}

	public void setClazz(String clazz) {
		this.clazz = clazz;
	}

	@Column(name = "DATATYPE", length = 64)
	public String getDataType() {
		return this.dataType;
	}

	public void setDataType(String dataType) {
		this.dataType = dataType;
	}

	@Column(name = "LABELS", length = 64)
	public String getLabels() {
		return this.labels;
	}

	public void setLabels(String labels) {
		this.labels = labels;
	}

	@Column(name = "CODE", length = 256)
	public String getCode() {
		return this.code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	@Column(name = "CODE1", length = 256)
	public String getCode1() {
		return this.code1;
	}

	public void setCode1(String code1) {
		this.code1 = code1;
	}

	@Column(name = "CODE2", length = 256)
	public String getCode2() {
		return this.code2;
	}

	public void setCode2(String code2) {
		this.code2 = code2;
	}

	@Column(name = "CODE3", length = 256)
	public String getCode3() {
		return this.code3;
	}

	public void setCode3(String code3) {
		this.code3 = code3;
	}

	@Column(name = "LAYER", length = 128)
	public String getLayer() {
		return this.layer;
	}

	public void setLayer(String layer) {
		this.layer = layer;
	}

	@Column(name = "STATUS", precision = 1, scale = 0)
	public Integer getStatus() {
		return this.status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	@Column(name = "READONLY", precision = 1, scale = 0)
	public Integer getReadonly() {
		return this.readonly;
	}

	public void setReadonly(Integer readonly) {
		this.readonly = readonly;
	}

	@Column(name = "REMARK", length = 100)
	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

}